home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C & C++ Multimedia Cyber Classroom
/
C and C++ Multimedia Cyber Classroom (Prentice Hall) (1998).iso
/
src
/
fig02_22.jar
/
Ch02
/
Fig02_22
/
Fig02_22.cpp
< prev
Wrap
C/C++ Source or Header
|
1997-10-11
|
2KB
|
68 lines
// Fig. 2.22: fig02_22.cpp
// Counting letter grades
#include <iostream.h>
int main()
{
int grade, // one grade
aCount = 0, // number of A's
bCount = 0, // number of B's
cCount = 0, // number of C's
dCount = 0, // number of D's
fCount = 0; // number of F's
cout << "Enter the letter grades." << endl
<< "Enter the EOF character to end input." << endl;
while ( ( grade = cin.get() ) != EOF ) {
switch ( grade ) { // switch nested in while
case 'A': // grade was uppercase A
case 'a': // or lowercase a
++aCount;
break; // necessary to exit switch
case 'B': // grade was uppercase B
case 'b': // or lowercase b
++bCount;
break;
case 'C': // grade was uppercase C
case 'c': // or lowercase c
++cCount;
break;
case 'D': // grade was uppercase D
case 'd': // or lowercase d
++dCount;
break;
case 'F': // grade was uppercase F
case 'f': // or lowercase f
++fCount;
break;
case '\n': // ignore newlines,
case '\t': // tabs,
case ' ': // and spaces in input
break;
default: // catch all other characters
cout << "Incorrect letter grade entered."
<< " Enter a new grade." << endl;
break; // optional
}
}
cout << "\n\nTotals for each letter grade are:"
<< "\nA: " << aCount
<< "\nB: " << bCount
<< "\nC: " << cCount
<< "\nD: " << dCount
<< "\nF: " << fCount << endl;
return 0;
}